package com.fjn.mybatis.dao;

import com.fjn.mybatis.bean.Employee;
import org.apache.ibatis.annotations.MapKey;
import org.apache.ibatis.annotations.Param;

import java.util.List;
import java.util.Map;

public interface EmployeeMapper {
//    通过id查找员工
    public Employee getEmpById(Integer id);
//    插入员工信息
    public void addEmp(Employee emp);
//    更新员工信息
    public void updateEmp(Employee emp);
//    删除员工
    public void deleteEmpByUId(Integer id);
//    通过id和name查找员工(多个参数使用参数命名@@Param("") )
    public Employee getEmpByIdAndName(@Param("id")Integer id, @Param("name")String name);

    //    使用Map通过id和name来查找员工
    public Employee getEmpByIdAndName1(Map<String, Object> map);
//    查询多条员工信息
    public List<Employee> getEmpsUseList();
//    用map封装多条记录，map的key是记录中的主键，value是封装后的javaBean(该例子中id为主键，所以key是“id”)
    @MapKey("id") //Mapkey中可以确定主键的关键字的名称
    public Map<Integer,Employee> getEmpsUseMap();
}
